package com.interagriculture.service;

import com.interagriculture.common.PageResult;
import com.interagriculture.entity.Project;
import com.interagriculture.entity.query.ProjectQuery;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest;

/**
 * (Project)表服务接口
 *
 * @author makejava
 * @since 2024-10-24 19:13:41
 */
public interface ProjectService {

    /**
     * 通过ID查询单条数据
     *
     * @param projectId 主键
     * @return 实例对象
     */
    Project queryById(Integer projectId);


    /**
     * 新增数据
     *
     * @param project 实例对象
     * @return 实例对象
     */
    Project insert(Project project);

    /**
     * 修改数据
     *
     * @param project 实例对象
     * @return 实例对象
     */
    Project update(Project project);

    /**
     * 通过主键删除数据
     *
     * @param projectId 主键
     * @return 是否成功
     */
    void deleteById(Integer projectId);

    /**
     * 分页条件查询
     * @param projectQuery
     * @return
     */
    PageResult findByPage(ProjectQuery projectQuery);

    /**
     * 新增或修改
     * @param project
     */
    void saveOrUpdate(Project project);
}
